Agent 怎么记住事情?吴恩达这门课讲透了

543 字

极客工具 极客工具 XTool 2026年6月26日 09:09

图片

你有没有想过一个问题:ChatGPT 聊到第 20 轮的时候,它还记得第 1 轮你说了什么吗?

答案是:大部分情况下不记得。context window 满了就是满了,旧对话被挤出去就消失了。

Agent 也一样。一个能调工具、能推理、能多步执行的 Agent,如果每次都从零开始,那它永远只是个 高级函数 ,不是真正的助手。

DeepLearning.AI × Oracle 在 2026 年 3 月上线了一门免费课程 Agent Memory: Building Memory-Aware Agents ,1 小时 57 分钟,7 个视频 + 4 段代码。讲师是 Richmond Alake 和 Nacho Martínez。

这门课把 Agent Memory 这件事讲得比较透。以下是课程笔记。


1. Agent 的核心循环

图片

课程开篇就给了定义:Agent 不是一个简单的 LLM 调用,而是一个具备 感知 → 推理 → 行动 循环的系统。

图片

行动层对接的工具包括 Functions、REST APIs、Scripts、Skills、MCP。

✏️ Note

Agent 的核心循环是 感知 → 推理 → 行动 → 再感知 。记忆就是这个循环里的 粘合剂 。没有记忆,每一轮都从零开始。


2. Memory Lifecycle:记忆不只是存取

图片

一说到 记忆 ,直觉就是 存进去,取出来 。但课程提出了一个完整的生命周期:

阶段 做什么
Aggregation & Ingestion 从多个数据源采集原始数据
Representation & Metadata Enrichment 创建向量嵌入,附加时间戳、意图、语义信息等元数据
Storage 分层存储(短期/中期/长期)
Organization 对记忆建模、索引、建立关联

三层存储设计

  • 短期记忆 :当前对话的即时上下文
  • 中期记忆 :用户行为模式、偏好
  • 长期记忆 :持久性知识、用户画像

💡 Tip

这和人类的记忆分类很像:工作记忆(此时此刻在想什么)、短期记忆(刚才发生的事)、长期记忆(小时候学会的技能)。Agent 的记忆架构本质上是在模拟这个分层。


3. Context Engineering:context window 不能有什么塞什么

图片

这门课造了一个词: Context Engineering ,定义为:

\==最优地选择和组织喂给 LLM Context Window 的信息==

context window 的构成:

图片

课程区分了三个容易混淆的概念:

概念 范围 关注点
Context Engineering 最宽 所有进入 context window 的内容(指令、知识库、工具、记忆)
Memory Engineering 聚焦 记什么、怎么存、怎么检索、什么时候遗忘
Memory Unit 最小 记忆的基本单元

⚠️ Warning

Context Engineering ≠ Memory Engineering。前者更宽,包括系统指令、工具定义、知识库等所有进入上下文的东西。后者只管记忆的写入、存储、检索和遗忘。


4. Context Summarization:压缩长文本

图片

第一种压缩方式:把长文本缩成摘要,再注入 context window。

课程用了一个研究摘要的例子来说明:

原始文本 (长,约 200 字):一段关于 12 周 RAG 助手研究的多句描述,含参与者人数、实验方法等细节。

摘要后 (短,约 40 字): 12-week study (n=48),RAG 的引用准确率 92% vs 71%,主题覆盖 6.3 vs 4.1

三个要点:

  1. 1. 摘要内容被注入一个干净的 context window
  2. 2. 对某些任务,通过语义搜索检索摘要,能给 LLM 提供高信号密度上下文
  3. 3. ==但朴素的摘要是有损的==,压缩必然丢信息

5. Context Compaction:比摘要更进一步

图片

第二种压缩方式:把多段对话上下文打包存储,生成带 ID 的可检索记忆块。

Summarization Compaction
做什么 长文本缩成短摘要 多段对话打包存储
输出 一段精简文字 带 ID 的记忆块
检索方式 语义搜索 ID / 语义双通道

工作流程:

图片

💡 Tip

Compaction 的核心价值:给一段完整对话打包,存为带 ID 的记忆块。用的时候通过 ID 快速召回,不需要把所有历史对话全量塞进 context window。特别适合长对话场景——几十轮之后,早期对话压缩成可检索的块就够了。


6. Workflow Memory:把推理过程也记住

图片

课程举了个天气查询的例子:

图片

第一次 :Agent 需要逐步推理(感知 → 调工具1 → 拿结果 → 调工具2……)

第二次 :有 Workflow Memory,直接复用 5 步链路,省 token、降延迟、提高可靠性。

✏️ Note

Skill 就是固化下来的 Workflow Memory——把重复的 Agent 推理过程抽象成可复用的流程。第一次靠推理,第二次靠记忆,第三次靠肌肉。


7. Memory Ops:整个课程最核心的一张图

图片

这张图把 Agent 循环中所有 Memory 操作画在了一起。

Agent Loop 三步循环

图片

Memory 操作分两类

Loop 内 (每轮循环自动执行)分三种:

  • read summary / read entity / read workflow / read knowledge base / read conversational memory
  • write conv mem (写入对话记忆)/ summarize_conversation
  • 扩展expand summary (展开摘要为详细内容)/ search internet

Loop 外 (由 Inner Harness 控制):

  • • 启动条件:用户提供输入
  • • 停止条件:任务完成 / 超时 / 出错 / 需要用户输入

🔥 Important

Memory 不只是存,还有一整套 read / write / expand / summarize 操作在每轮循环中动态运行。什么时候读、什么时候写、什么时候压缩,都是工程设计的核心。


8. 和实际平台的对应关系

课程讲的不是纯理论,每个概念都能对应到实际平台:

  • Knowledge Base Docs (RAG) → 知识库(ES + 向量检索)
  • Workflow Memory → Skill(固化工作流)
  • Conversational Memory → 对话记忆层
  • Entity Memory → 用户画像 / 实体记忆
  • Context Engineering → 上下文组装逻辑
  • Memory Engineering → Memory 层(写入可控、读取可控、分类决策)

Memory 系统设计原则

  1. 1. ==写入可控== — 记忆写入必须可查看、可修改、可删除
  2. 2. ==读取可控== — 检索流程必须白盒,能看清为什么检索到这条记忆
  3. 3. ==不盲目写入== — 不是什么信息都往记忆里塞,要有筛选标准
  4. 4. ==分类决策==:
  5. • 一次性目标 → 写 Prompt
    • • 长期事实 → 写 Memory
    • • 大量文档 → 用 RAG
    • • 重复流程 → 做 Skill
    • • 长期约束 → 写 Rule

课程信息

  • • 课程:Agent Memory: Building Memory-Aware Agents [1]
  • • 合作方:DeepLearning.AI × Oracle
  • • 讲师:Richmond Alake, Nacho Martínez
  • • 时长:1 小时 57 分钟,7 个视频 + 4 段代码 + 1 个作业
  • • 费用:免费

💡 Tip

Anthropic 也写了一篇关于 Context Engineering 的文章,可以作为补充阅读:[Effective Context Engineering for AI Agents](https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents)。Redis 也开源了 [Agent Memory Server](https://redis.github.io/agent-memory-server/),实现了类似的 lifecycle 管理。

引用链接

[1] Agent Memory: Building Memory-Aware Agents: https://www.deeplearning.ai/courses/agent-memory-building-memory-aware-agents

技术原理 · 目录